home *** CD-ROM | disk | FTP | other *** search
/ Komputer for Alle: Internet utan modem / Internet CD.iso / web / computer / wwweps~1.com / adam / galactic.dcr / 00103.ls < prev    next >
Encoding:
Text File  |  1997-03-06  |  1.8 KB  |  60 lines

  1. on keyDown
  2.   global turn
  3.   set turn to 1
  4. end
  5.  
  6. on key
  7.   global exact, up, right, offset, turn, bulletlist, player_acc, direction, max_bullets, bullets_speed
  8.   set turn to 0
  9.   if (the key = "/") or (the keyCode = 124) then
  10.     set direction to direction - 1
  11.     if direction = 0 then
  12.       set direction to exact
  13.     end if
  14.     set the castNum of sprite 10 to direction + offset - 1
  15.   end if
  16.   if (the key = ",") or (the keyCode = 123) then
  17.     set direction to direction + 1
  18.     if direction = (exact + 1) then
  19.       set direction to 1
  20.     end if
  21.     set the castNum of sprite 10 to direction + offset - 1
  22.   end if
  23.   if (the key = "l") or (the key = ";") or (the keyCode = 126) then
  24.     set right to right + (cos(direction * PI / (exact / 2)) * player_acc)
  25.     set up to up + (sin(direction * PI / (exact / 2)) * player_acc)
  26.     if (direction = 6) or (direction = 18) then
  27.       set right to right - cos(direction * PI / (exact / 2))
  28.     end if
  29.     if (direction = 12) or (direction = 24) then
  30.       set up to up - sin(direction * PI / (exact / 2))
  31.     end if
  32.   end if
  33.   if (the key = ".") or (the key = "z") or (the keyCode = 49) then
  34.     set bulletup to sin(direction * PI / (exact / 2)) * bullets_speed
  35.     set bulletright to cos(direction * PI / (exact / 2)) * bullets_speed
  36.     if exact = 24 then
  37.       if (direction = 6) or (direction = 18) then
  38.         set bulletright to 0
  39.       end if
  40.       if (direction = 12) or (direction = 24) then
  41.         set bulletup to 0
  42.       end if
  43.     end if
  44.     if exact = 8 then
  45.       if direction = 4 then
  46.         set bulletup to 0
  47.       end if
  48.       if direction = 6 then
  49.         set bulletright to 0
  50.       end if
  51.     end if
  52.     repeat with t = 1 to max_bullets
  53.       if getAt(bulletlist, t) = 0 then
  54.         setAt(bulletlist, t, birth(script "fire script", t + 4, bulletup, bulletright))
  55.         return 
  56.       end if
  57.     end repeat
  58.   end if
  59. end
  60.